home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 42 / Amiga Format AFCD42 (Issue 126, Aug 1999).iso / -serious- / programming / other / wild / include / sqrt.s < prev    next >
Text File  |  1999-05-25  |  449b  |  22 lines

  1. PySqrt    MACRO    ; \1=a^2 \2=a \3 skr \4 skr
  2.     moveq    #1,\2        ;thank goes to  
  3.     ror.l    #2,\2        ;Graham for this 
  4.         moveq   #32,\3        ;fast and short sqrter 
  5. .l2n 
  6.         move.l  \2,\4 
  7.         rol.l   \3,\4 
  8.         add.w   \2,\2 
  9.         cmp.l   \4,\1 
  10.         bcs.b   .no 
  11.         addq.w  #1,\2 
  12.         sub.l   \4,\1 
  13. .no 
  14.         subq.w  #2,\3 
  15.         bgt.b   .l2n 
  16.         andi.l    #$0000ffff,\2
  17.     ENDM 
  18.  
  19. a:    move.l    #1000,d3
  20.     PySqrt    d3,d4,d5,d6
  21.     rts
  22.